/**
 * Copyright (c) 2016-2019 人人开源 All rights reserved.
 * <p>
 * https://www.renren.io
 * <p>
 * 版权所有，侵权必究！
 */

package com.cn.xiaonuo.tcrfinance.tcrshops.service;



import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cn.xiaonuo.common.entity.BusinessMessage;
import com.cn.xiaonuo.tcrfinance.tcrorder.entity.PvTicketingRecord;
import com.cn.xiaonuo.tcrfinance.tcrshops.entity.PvProduct;
import com.cn.xiaonuo.tcrfinance.tcrshops.entity.PvProductGl;
import com.cn.xiaonuo.tcrfinance.tcrshops.param.*;
import com.cn.xiaonuo.tcrfinance.tcrusers.param.MasterAccountExcelParam;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * 用户
 *
 * @author Mark sunlightcs@gmail.com
 */
public interface ProductService {

    BusinessMessage updateProductXuNiVolume( PvProductParam pvProductParam);

    BusinessMessage updateProductStatus( ProductReqParam productReqParam);

    //查询商品上票信息
    PvProductGl queryTicket(Integer productId);
    //查询用户当天释放某个商品的总数量
    Integer clearVolume();

    /**
     * 查看商品类别
     *
     * @author luyangyang
     * @date 2021-10-27 11:45:10
     */
    PvProduct detail(PvProductParam pvProductParam);
    /**
     * 首页商品列表
     * @return
     */
    BusinessMessage queryProductNameList(ProductReqParam productReqParam);

    List<Map<String,Object>> queryProductNumByUserId(Integer productId, String productName, String accounts, String phone);

    BusinessMessage updateSalesStatus(Integer productId, Integer isSale);

    /**
     * 乡村振兴上票记录
     * @param param
     * @return
     */
    Page<PvTicketingRecord> ticketPage(TicketParam param);

    /**
     * 一键摘单商品列表
     * @param param
     * @return
     */
    BusinessMessage queryHpcHtProductList(HtProductListParam param);

    /**
     * 摘单记录导出
     * @param param
     */
    void exportPickingRecords(HttpServletResponse response, MasterAccountExcelParam param);
}
